<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>xilnvm: xnvm_efuse_common.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">xilnvm
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;"
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xnvm__efuse__common_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">xnvm_efuse_common.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>This file contains eFuse functions of xilnvm library and provides the access to program eFUSE. </p>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver   Who  Date        Changes
</p>
<hr/>
<p>
3.0   kal  07/16/2022 Initial release
      dc   08/29/2022 Changed u8 to u32 type
      kal  09/29/2022 Removed unlock and lock of eFuse controller
                      from the XNvm_EfuseCacheReload function
3.1   skg  10/25/2022 Added in body comments for APIs
      kal  03/07/2023 Added volatile keyword for Status variables
3.2   kum  04/11/2023 Moved Env monitor API's from versal xnvm_efuse.c to make use for both versal and versalnet
      vss  09/19/2023   Fixed MISRA-C Rule 8.7 violation
3.3   vss  12/31/2023 Added support for Program the eFuse protection bits only once
      ng   11/22/2023 Fixed doxygen grouping</pre><pre></pre> </div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">eFuse macro definitions</div></td></tr>
<tr class="memitem:acd50e659ab2873ed4d3fed56e88c6d9c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#acd50e659ab2873ed4d3fed56e88c6d9c">XNVM_ONE_MICRO_SECOND</a>&#160;&#160;&#160;(1U)</td></tr>
<tr class="memdesc:acd50e659ab2873ed4d3fed56e88c6d9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">&lt; One Micro Second Timeout  <a href="#acd50e659ab2873ed4d3fed56e88c6d9c">More...</a><br/></td></tr>
<tr class="separator:acd50e659ab2873ed4d3fed56e88c6d9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dbb0c4c8c48e43f76855556bfd8ddfa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a6dbb0c4c8c48e43f76855556bfd8ddfa">XNVM_EFUSE_TPGM_DIV</a>&#160;&#160;&#160;(200000UL)</td></tr>
<tr class="memdesc:a6dbb0c4c8c48e43f76855556bfd8ddfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">TRD Divisor value.  <a href="#a6dbb0c4c8c48e43f76855556bfd8ddfa">More...</a><br/></td></tr>
<tr class="separator:a6dbb0c4c8c48e43f76855556bfd8ddfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae239711c0eac74b9b61f4722ff364793"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#ae239711c0eac74b9b61f4722ff364793">XNVM_EFUSE_TRD_DIV</a>&#160;&#160;&#160;(4608294UL)</td></tr>
<tr class="memdesc:ae239711c0eac74b9b61f4722ff364793"><td class="mdescLeft">&#160;</td><td class="mdescRight">TRMD Divisor value.  <a href="#ae239711c0eac74b9b61f4722ff364793">More...</a><br/></td></tr>
<tr class="separator:ae239711c0eac74b9b61f4722ff364793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a784c2ab9f47ab92cf97a2c7b4fe65f68"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a784c2ab9f47ab92cf97a2c7b4fe65f68">XNVM_EFUSE_TRMD_DIV</a>&#160;&#160;&#160;(2000000UL)</td></tr>
<tr class="memdesc:a784c2ab9f47ab92cf97a2c7b4fe65f68"><td class="mdescLeft">&#160;</td><td class="mdescRight">TSU_H_PS Divisor value.  <a href="#a784c2ab9f47ab92cf97a2c7b4fe65f68">More...</a><br/></td></tr>
<tr class="separator:a784c2ab9f47ab92cf97a2c7b4fe65f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a819382f59ba2be5679312a9d8d6267c7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a819382f59ba2be5679312a9d8d6267c7">XNVM_EFUSE_TSU_H_PS_DIV</a>&#160;&#160;&#160;(4807692UL)</td></tr>
<tr class="memdesc:a819382f59ba2be5679312a9d8d6267c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">TSU_H_PS_CS Divisor value.  <a href="#a819382f59ba2be5679312a9d8d6267c7">More...</a><br/></td></tr>
<tr class="separator:a819382f59ba2be5679312a9d8d6267c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e3076a511984c7164e5f40312fceb54"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a1e3076a511984c7164e5f40312fceb54">XNVM_EFUSE_TSU_H_PS_CS_DIV</a>&#160;&#160;&#160;(6993007UL)</td></tr>
<tr class="memdesc:a1e3076a511984c7164e5f40312fceb54"><td class="mdescLeft">&#160;</td><td class="mdescRight">TSU_H_CS Divisor value.  <a href="#a1e3076a511984c7164e5f40312fceb54">More...</a><br/></td></tr>
<tr class="separator:a1e3076a511984c7164e5f40312fceb54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3981b7cdd57c22640d44e78b9586f29e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a3981b7cdd57c22640d44e78b9586f29e">XNVM_EFUSE_TSU_H_CS_DIV</a>&#160;&#160;&#160;(5434783UL)</td></tr>
<tr class="memdesc:a3981b7cdd57c22640d44e78b9586f29e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default secure value for 32 bit.  <a href="#a3981b7cdd57c22640d44e78b9586f29e">More...</a><br/></td></tr>
<tr class="separator:a3981b7cdd57c22640d44e78b9586f29e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac098113c35ee3bd002d2ba7c1e7db74e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#ac098113c35ee3bd002d2ba7c1e7db74e">XNVM_EFUSE_SEC_DEF_VAL_ALL_BIT_SET</a>&#160;&#160;&#160;(0xFFFFFFFFU)</td></tr>
<tr class="memdesc:ac098113c35ee3bd002d2ba7c1e7db74e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default secure value for 8 bit.  <a href="#ac098113c35ee3bd002d2ba7c1e7db74e">More...</a><br/></td></tr>
<tr class="separator:ac098113c35ee3bd002d2ba7c1e7db74e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb30690462d9f23f008d70946038ee1d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#adb30690462d9f23f008d70946038ee1d">XNVM_EFUSE_SEC_DEF_VAL_BYTE_SET</a>&#160;&#160;&#160;(0xFFU)</td></tr>
<tr class="memdesc:adb30690462d9f23f008d70946038ee1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon VCCPMC Amux ctrl value.  <a href="#adb30690462d9f23f008d70946038ee1d">More...</a><br/></td></tr>
<tr class="separator:adb30690462d9f23f008d70946038ee1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9172ab3c395b1c87cc6c243eb5b5e41"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#ab9172ab3c395b1c87cc6c243eb5b5e41">XNVM_EFUSE_SYSMON_VCCPMC_AMUX_CTRL</a>&#160;&#160;&#160;(0x0bU)</td></tr>
<tr class="memdesc:ab9172ab3c395b1c87cc6c243eb5b5e41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon VCCPMC Abus sw1 value.  <a href="#ab9172ab3c395b1c87cc6c243eb5b5e41">More...</a><br/></td></tr>
<tr class="separator:ab9172ab3c395b1c87cc6c243eb5b5e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada30b94ac5b0e038f2689e45f26c296b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#ada30b94ac5b0e038f2689e45f26c296b">XNVM_EFUSE_SYSMON_VCCPMC_ABUS_SW1</a>&#160;&#160;&#160;(0x00U)</td></tr>
<tr class="memdesc:ada30b94ac5b0e038f2689e45f26c296b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon VCCPMC Abus sw0 value.  <a href="#ada30b94ac5b0e038f2689e45f26c296b">More...</a><br/></td></tr>
<tr class="separator:ada30b94ac5b0e038f2689e45f26c296b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93915a19e1bccc48bbc4e9d6fef6c379"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a93915a19e1bccc48bbc4e9d6fef6c379">XNVM_EFUSE_SYSMON_VCCPMC_ABUS_SW0</a>&#160;&#160;&#160;(0x02U)</td></tr>
<tr class="memdesc:a93915a19e1bccc48bbc4e9d6fef6c379"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon VCCPMC mode value.  <a href="#a93915a19e1bccc48bbc4e9d6fef6c379">More...</a><br/></td></tr>
<tr class="separator:a93915a19e1bccc48bbc4e9d6fef6c379"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4eddd347eb370c94797d1b0074f95e99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a4eddd347eb370c94797d1b0074f95e99">XNVM_EFUSE_SYSMON_VCCPMC_MODE</a>&#160;&#160;&#160;(0x00U)</td></tr>
<tr class="memdesc:a4eddd347eb370c94797d1b0074f95e99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon number of measurement registers.  <a href="#a4eddd347eb370c94797d1b0074f95e99">More...</a><br/></td></tr>
<tr class="separator:a4eddd347eb370c94797d1b0074f95e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43be5c3424b5e1df2cc040e69447292b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a43be5c3424b5e1df2cc040e69447292b">XNVM_EFUSE_SYSMON_NUM_MEASURE_REGS</a>&#160;&#160;&#160;(0x20U)</td></tr>
<tr class="memdesc:a43be5c3424b5e1df2cc040e69447292b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon number of supplies per flag.  <a href="#a43be5c3424b5e1df2cc040e69447292b">More...</a><br/></td></tr>
<tr class="separator:a43be5c3424b5e1df2cc040e69447292b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75a6f7f12d78cdad69940f49e27811d3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a75a6f7f12d78cdad69940f49e27811d3">XNVM_EFUSE_SYSMON_NUM_SUPPLIES_PER_FLAG</a>&#160;&#160;&#160;(32U)</td></tr>
<tr class="memdesc:a75a6f7f12d78cdad69940f49e27811d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sysmon Psv timeout value.  <a href="#a75a6f7f12d78cdad69940f49e27811d3">More...</a><br/></td></tr>
<tr class="separator:a75a6f7f12d78cdad69940f49e27811d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cff342e0039664d80d62412e1494341"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#a3cff342e0039664d80d62412e1494341">XNVM_EFUSE_SYSMONPSV_TIMEOUT</a>&#160;&#160;&#160;(100000U)</td></tr>
<tr class="memdesc:a3cff342e0039664d80d62412e1494341"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fraction multiplier value.  <a href="#a3cff342e0039664d80d62412e1494341">More...</a><br/></td></tr>
<tr class="separator:a3cff342e0039664d80d62412e1494341"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad803c38ffc552fe2bc5f6c5f8e6dab70"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xnvm__efuse__common_8c.html#ad803c38ffc552fe2bc5f6c5f8e6dab70">XNVM_EFUSE_FRACTION_MUL_VALUE</a>&#160;&#160;&#160;(1000000U)</td></tr>
<tr class="memdesc:ad803c38ffc552fe2bc5f6c5f8e6dab70"><td class="mdescLeft">&#160;</td><td class="mdescRight">eFuse word length  <a href="#ad803c38ffc552fe2bc5f6c5f8e6dab70">More...</a><br/></td></tr>
<tr class="separator:ad803c38ffc552fe2bc5f6c5f8e6dab70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a187d1e419e66b1ba10a3a73debd9904d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a187d1e419e66b1ba10a3a73debd9904d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>XNVM_EFUSE_WORD_LEN</b>&#160;&#160;&#160;(4U)</td></tr>
<tr class="separator:a187d1e419e66b1ba10a3a73debd9904d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaf62c488013d769df5cf16476d9dc04ed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#gaf62c488013d769df5cf16476d9dc04ed">XNvm_EfuseDisablePowerDown</a> (void)</td></tr>
<tr class="memdesc:gaf62c488013d769df5cf16476d9dc04ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function disables power down of eFUSE macros.  <a href="group__xnvm__efuse__server__apis.html#gaf62c488013d769df5cf16476d9dc04ed">More...</a><br/></td></tr>
<tr class="separator:gaf62c488013d769df5cf16476d9dc04ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr class="memitem:ga92376a9337883b186a9d6c888f7b7937"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#ga92376a9337883b186a9d6c888f7b7937">XNvm_EfuseCacheReload</a> (void)</td></tr>
<tr class="memdesc:ga92376a9337883b186a9d6c888f7b7937"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reloads the eFUSE cache, so that eFUSE values can be directly read from cache.  <a href="group__xnvm__efuse__server__apis.html#ga92376a9337883b186a9d6c888f7b7937">More...</a><br/></td></tr>
<tr class="separator:ga92376a9337883b186a9d6c888f7b7937"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab18b9343a842ff2c9d533625bd4ffe9a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#gab18b9343a842ff2c9d533625bd4ffe9a">XNvm_EfuseSetReadMode</a> (<a class="el" href="group__xnvm__efuse__server__apis.html#ga626bd515d5b319991d9b6b337ac3eafa">XNvm_EfuseRdMode</a> RdMode)</td></tr>
<tr class="memdesc:gab18b9343a842ff2c9d533625bd4ffe9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function sets read mode of eFUSE controller.  <a href="group__xnvm__efuse__server__apis.html#gab18b9343a842ff2c9d533625bd4ffe9a">More...</a><br/></td></tr>
<tr class="separator:gab18b9343a842ff2c9d533625bd4ffe9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab12034723a4823aa225ddf9500fc45e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#gab12034723a4823aa225ddf9500fc45e7">XNvm_EfuseSetRefClk</a> (void)</td></tr>
<tr class="memdesc:gab12034723a4823aa225ddf9500fc45e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function sets reference clock of eFUSE controller.  <a href="group__xnvm__efuse__server__apis.html#gab12034723a4823aa225ddf9500fc45e7">More...</a><br/></td></tr>
<tr class="separator:gab12034723a4823aa225ddf9500fc45e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f509a4e6fbf01df3a0a5cf4e5b1920a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#ga0f509a4e6fbf01df3a0a5cf4e5b1920a">XNvm_EfuseEnableProgramming</a> (void)</td></tr>
<tr class="memdesc:ga0f509a4e6fbf01df3a0a5cf4e5b1920a"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function enables programming mode of eFUSE controller.  <a href="group__xnvm__efuse__server__apis.html#ga0f509a4e6fbf01df3a0a5cf4e5b1920a">More...</a><br/></td></tr>
<tr class="separator:ga0f509a4e6fbf01df3a0a5cf4e5b1920a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0210acfa1906f9a6d4c462ca0c214552"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__util__apis.html#ga0210acfa1906f9a6d4c462ca0c214552">XNvm_EfuseDisableProgramming</a> (void)</td></tr>
<tr class="memdesc:ga0210acfa1906f9a6d4c462ca0c214552"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function disables programming mode of eFUSE controller.  <a href="group__xnvm__util__apis.html#ga0210acfa1906f9a6d4c462ca0c214552">More...</a><br/></td></tr>
<tr class="separator:ga0210acfa1906f9a6d4c462ca0c214552"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf9884d1248299bbcab9c2eb75f3c12d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__util__apis.html#gadf9884d1248299bbcab9c2eb75f3c12d">XNvm_EfuseResetReadMode</a> (void)</td></tr>
<tr class="memdesc:gadf9884d1248299bbcab9c2eb75f3c12d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function disables Margin Read mode of eFUSE controller.  <a href="group__xnvm__util__apis.html#gadf9884d1248299bbcab9c2eb75f3c12d">More...</a><br/></td></tr>
<tr class="separator:gadf9884d1248299bbcab9c2eb75f3c12d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga48684cc917830291d61d10ec465489e1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers</a> (void)</td></tr>
<tr class="memdesc:ga48684cc917830291d61d10ec465489e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function initializes eFUSE controller timers.  <a href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">More...</a><br/></td></tr>
<tr class="separator:ga48684cc917830291d61d10ec465489e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4e019d9cd1db1fc71ae3b17f615eb8a3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__util__apis.html#ga4e019d9cd1db1fc71ae3b17f615eb8a3">XNvm_EfuseSetupController</a> (<a class="el" href="group__xnvm__efuse__server__apis.html#gaf5262e07dfefff15534093f7f3d24fde">XNvm_EfuseOpMode</a> Op, <a class="el" href="group__xnvm__efuse__server__apis.html#ga626bd515d5b319991d9b6b337ac3eafa">XNvm_EfuseRdMode</a> RdMode)</td></tr>
<tr class="memdesc:ga4e019d9cd1db1fc71ae3b17f615eb8a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function setups eFUSE controller for given operation and read mode.  <a href="group__xnvm__util__apis.html#ga4e019d9cd1db1fc71ae3b17f615eb8a3">More...</a><br/></td></tr>
<tr class="separator:ga4e019d9cd1db1fc71ae3b17f615eb8a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga34244e65ac073b03f29ee6a5672da34a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#ga34244e65ac073b03f29ee6a5672da34a">XNvm_EfuseCheckForTBits</a> (void)</td></tr>
<tr class="memdesc:ga34244e65ac073b03f29ee6a5672da34a"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function checks whether Tbits are programmed or not.  <a href="group__xnvm__efuse__server__apis.html#ga34244e65ac073b03f29ee6a5672da34a">More...</a><br/></td></tr>
<tr class="separator:ga34244e65ac073b03f29ee6a5672da34a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac3c8a8519db111050a86072af33a7f9d"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId</a> (UINTPTR SysmonpsvSatBaseAddr)</td></tr>
<tr class="memdesc:gac3c8a8519db111050a86072af33a7f9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads root register ID where measurement is stored in Root SysMon.  <a href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">More...</a><br/></td></tr>
<tr class="separator:gac3c8a8519db111050a86072af33a7f9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf8c865ce6cd02be72da8d08eae8f6030"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">XNvm_EfuseTempAndVoltChecks</a> (const XSysMonPsv *SysMonInstPtr)</td></tr>
<tr class="memdesc:gaf8c865ce6cd02be72da8d08eae8f6030"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function performs the Temparature and Voltage checks to ensure that they are in limits before eFuse programming.  <a href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">More...</a><br/></td></tr>
<tr class="separator:gaf8c865ce6cd02be72da8d08eae8f6030"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga15d0a0989ba278e28edaaf2cd9d7bf7f"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xnvm__efuse__server__apis.html#ga15d0a0989ba278e28edaaf2cd9d7bf7f">XNvm_EfuseReadProtectionBits</a> (u32 Mask)</td></tr>
<tr class="memdesc:ga15d0a0989ba278e28edaaf2cd9d7bf7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function reads the corresponding eFuse protection bits.  <a href="group__xnvm__efuse__server__apis.html#ga15d0a0989ba278e28edaaf2cd9d7bf7f">More...</a><br/></td></tr>
<tr class="separator:ga15d0a0989ba278e28edaaf2cd9d7bf7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ad803c38ffc552fe2bc5f6c5f8e6dab70"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_FRACTION_MUL_VALUE&#160;&#160;&#160;(1000000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>eFuse word length </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">XNvm_EfuseTempAndVoltChecks()</a>.</p>

</div>
</div>
<a class="anchor" id="ac098113c35ee3bd002d2ba7c1e7db74e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SEC_DEF_VAL_ALL_BIT_SET&#160;&#160;&#160;(0xFFFFFFFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Default secure value for 8 bit. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gab18b9343a842ff2c9d533625bd4ffe9a">XNvm_EfuseSetReadMode()</a>, <a class="el" href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">XNvm_EfuseTempAndVoltChecks()</a>, and <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="adb30690462d9f23f008d70946038ee1d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SEC_DEF_VAL_BYTE_SET&#160;&#160;&#160;(0xFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon VCCPMC Amux ctrl value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gab18b9343a842ff2c9d533625bd4ffe9a">XNvm_EfuseSetReadMode()</a>.</p>

</div>
</div>
<a class="anchor" id="a43be5c3424b5e1df2cc040e69447292b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_NUM_MEASURE_REGS&#160;&#160;&#160;(0x20U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon number of supplies per flag. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="a75a6f7f12d78cdad69940f49e27811d3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_NUM_SUPPLIES_PER_FLAG&#160;&#160;&#160;(32U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon Psv timeout value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">XNvm_EfuseTempAndVoltChecks()</a>.</p>

</div>
</div>
<a class="anchor" id="a93915a19e1bccc48bbc4e9d6fef6c379"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_VCCPMC_ABUS_SW0&#160;&#160;&#160;(0x02U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon VCCPMC mode value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="ada30b94ac5b0e038f2689e45f26c296b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_VCCPMC_ABUS_SW1&#160;&#160;&#160;(0x00U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon VCCPMC Abus sw0 value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="ab9172ab3c395b1c87cc6c243eb5b5e41"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_VCCPMC_AMUX_CTRL&#160;&#160;&#160;(0x0bU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon VCCPMC Abus sw1 value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="a4eddd347eb370c94797d1b0074f95e99"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMON_VCCPMC_MODE&#160;&#160;&#160;(0x00U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sysmon number of measurement registers. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gac3c8a8519db111050a86072af33a7f9d">XNvm_GetSysmonSupplyRegId()</a>.</p>

</div>
</div>
<a class="anchor" id="a3cff342e0039664d80d62412e1494341"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_SYSMONPSV_TIMEOUT&#160;&#160;&#160;(100000U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fraction multiplier value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gaf8c865ce6cd02be72da8d08eae8f6030">XNvm_EfuseTempAndVoltChecks()</a>.</p>

</div>
</div>
<a class="anchor" id="a6dbb0c4c8c48e43f76855556bfd8ddfa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TPGM_DIV&#160;&#160;&#160;(200000UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>TRD Divisor value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="ae239711c0eac74b9b61f4722ff364793"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TRD_DIV&#160;&#160;&#160;(4608294UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>TRMD Divisor value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="a784c2ab9f47ab92cf97a2c7b4fe65f68"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TRMD_DIV&#160;&#160;&#160;(2000000UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>TSU_H_PS Divisor value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="a3981b7cdd57c22640d44e78b9586f29e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TSU_H_CS_DIV&#160;&#160;&#160;(5434783UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Default secure value for 32 bit. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="a1e3076a511984c7164e5f40312fceb54"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TSU_H_PS_CS_DIV&#160;&#160;&#160;(6993007UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>TSU_H_CS Divisor value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="a819382f59ba2be5679312a9d8d6267c7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_EFUSE_TSU_H_PS_DIV&#160;&#160;&#160;(4807692UL)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>TSU_H_PS_CS Divisor value. </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#ga48684cc917830291d61d10ec465489e1">XNvm_EfuseInitTimers()</a>.</p>

</div>
</div>
<a class="anchor" id="acd50e659ab2873ed4d3fed56e88c6d9c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XNVM_ONE_MICRO_SECOND&#160;&#160;&#160;(1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>&lt; One Micro Second Timeout </p>
<p>TPGM Divisor value </p>

<p>Referenced by <a class="el" href="group__xnvm__efuse__server__apis.html#gaf62c488013d769df5cf16476d9dc04ed">XNvm_EfuseDisablePowerDown()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
